package com.dstz.bpm.core.model;

import com.dstz.base.api.model.IBaseModel;
import com.dstz.bpm.api.model.task.IBpmTask;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import org.apache.commons.lang3.builder.ToStringBuilder;

@ApiModel(
   description = "流程任务信息"
)
public class BpmTask implements IBaseModel, IBpmTask {
   @ApiModelProperty("任务ID")
   protected String id;
   @ApiModelProperty("任务名")
   protected String name;
   @ApiModelProperty("任务标题")
   protected String subject;
   @ApiModelProperty("流程实例ID")
   protected String v;
   @ApiModelProperty("任务原生TaskID")
   protected String taskId;
   @ApiModelProperty("任务节点ID")
   protected String nodeId;
   @ApiModelProperty("流程定义ID")
   protected String defId;
   @ApiModelProperty("候选人ID，若为0 则为多人")
   protected String Y;
   @ApiModelProperty("候选人Name")
   protected String Z;
   @ApiModelProperty("任务状态")
   protected String status;
   @ApiModelProperty("任务优先级，默认50")
   protected Integer priority;
   protected Date aa;
   @ApiModelProperty("任务类型")
   protected String ab;
   @ApiModelProperty("父任务ID 会签，分发等情况会用到")
   protected String parentId;
   @ApiModelProperty("原生实例ID")
   protected String I;
   @ApiModelProperty("原生ExecutionId")
   protected String ac;
   protected String x;
   protected Date createTime;
   protected String createBy;
   @ApiModelProperty("任务是否支持移动端")
   protected Integer supportMobile;
   @ApiModelProperty("驳回后返回至节点")
   protected String ad;

   public String getTaskType() {
      return this.ab;
   }

   public void setTaskType(String taskType) {
      this.ab = taskType;
   }

   public void setId(String id) {
      this.id = id;
   }

   public String getId() {
      return this.id;
   }

   public void setName(String name) {
      this.name = name;
   }

   public String getName() {
      return this.name;
   }

   public void setSubject(String subject) {
      this.subject = subject;
   }

   public String getSubject() {
      return this.subject;
   }

   public String getAssigneeNames() {
      return this.Z;
   }

   public void setAssigneeNames(String assigneeNames) {
      this.Z = assigneeNames;
   }

   public void setInstId(String instId) {
      this.v = instId;
   }

   public String getInstId() {
      return this.v;
   }

   public void setTaskId(String taskId) {
      this.taskId = taskId;
   }

   public String getTaskId() {
      return this.taskId;
   }

   public void setNodeId(String nodeId) {
      this.nodeId = nodeId;
   }

   public String getNodeId() {
      return this.nodeId;
   }

   public void setDefId(String defId) {
      this.defId = defId;
   }

   public String getDefId() {
      return this.defId;
   }

   public void setAssigneeId(String assigneeId) {
      this.Y = assigneeId;
   }

   public String getAssigneeId() {
      return this.Y;
   }

   public void setStatus(String status) {
      this.status = status;
   }

   public String getStatus() {
      return this.status;
   }

   public String getBackNode() {
      return this.ad;
   }

   public void setBackNode(String backNode) {
      this.ad = backNode;
   }

   public void setPriority(Integer priority) {
      this.priority = priority;
   }

   public Integer getPriority() {
      return this.priority;
   }

   public void setDueTime(Date dueTime) {
      this.aa = dueTime;
   }

   public Date getDueTime() {
      return this.aa;
   }

   public void setParentId(String parentId) {
      this.parentId = parentId;
   }

   public String getParentId() {
      return this.parentId;
   }

   public void setActInstId(String actInstId) {
      this.I = actInstId;
   }

   public String getActInstId() {
      return this.I;
   }

   public void setActExecutionId(String actExecutionId) {
      this.ac = actExecutionId;
   }

   public void setTypeId(String typeId) {
      this.x = typeId;
   }

   public String getTypeId() {
      return this.x;
   }

   public void setCreateTime(Date createTime) {
      this.createTime = createTime;
   }

   public Date getCreateTime() {
      return this.createTime;
   }

   public void setCreateBy(String createBy) {
      this.createBy = createBy;
   }

   public String getCreateBy() {
      return this.createBy;
   }

   public void setSupportMobile(Integer supportMobile) {
      this.supportMobile = supportMobile;
   }

   public Integer getSupportMobile() {
      return this.supportMobile;
   }

   public String toString() {
      return (new ToStringBuilder(this)).append("id", this.id).append("name", this.name).append("subject", this.subject).append("instId", this.v).append("taskId", this.taskId).append("nodeId", this.nodeId).append("defId", this.defId).append("assigneeId", this.Y).append("status", this.status).append("priority", this.priority).append("dueTime", this.aa).append("taskType", this.ab).append("parentId", this.parentId).append("actInstId", this.I).append("actExecutionId", this.ac).append("typeId", this.x).append("createTime", this.createTime).append("createBy", this.createBy).append("supportMobile", this.supportMobile).toString();
   }

   public String getActExecutionId() {
      return this.ac;
   }

   public Date getUpdateTime() {
      return null;
   }

   public void setUpdateTime(Date updatetime) {
   }

   public String getUpdateBy() {
      return null;
   }

   public void setUpdateBy(String updateBy) {
   }
}
